package com.ssy.lingxi.marketing.service;

import com.ssy.lingxi.scheduler.api.model.ScheduleTaskCallbackVO;

/**
 * 平台、商家活动定时服务类
 * @author yzc
 * @version 2.0.0
 * @date 2021/8/25
 */
public interface IMarketingScheduleCallBackService {

    /**
     * 启动平台活动报名任务
     * [报名时间开始]触发状态变更为: 待报名 -> 待审核报名
     * @param callbackVO 接口参数
     */
    void startPfActivitySignUpTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 结束平台活动报名任务
     * [报名时间结束]触发状态变更为: 待审核报名 -> 待上线活动
     * @param callbackVO 接口参数
     */
    void endPfActivitySignUpTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 结束平台活动任务
     * @param callbackVO 接口参数
     */
    void endPfActivityTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 结束商家活动任务
     * @param callbackVO 接口参数
     */
    void endMcActivityTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 开始平台优惠券发放任务
     * @param callbackVO 接口参数
     */
    void startPfCouponReleaseTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 结束平台优惠券发放任务
     * @param callbackVO 接口参数
     */
    void endPfCouponReleaseTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 开始商家优惠券发放任务
     * @param callbackVO 接口参数
     */
    void startMcCouponReleaseTask(ScheduleTaskCallbackVO callbackVO);

    /**
     * 结束商家优惠券发放任务
     * @param callbackVO 接口参数
     */
    void endMcCouponReleaseTask(ScheduleTaskCallbackVO callbackVO);
}
